This invention relates generally to computer networking and, more particularly, relates to a enhancing the functionality of wireless networking.
To provide the greatest compatibility between software and hardware components on a computer system, the operating system of the computer defines certain interfaces which can be accessed and used by the programmers of the software components and which are to be provided and supported by the designers of hardware components. Thus, by using the defined interface, the software component can be assured of compatibility with all of the hardware components which support the interface. Similarly, a hardware component providing a specific interface can be assured that software components will be able to locate and access the functionality provided by the hardware component through the interface.
Existing support for wireless networking, however, is lacking from the interfaces defined by modern operating systems, such as the MICROSOFT WINDOWS 98 brand and the MICROSOFT WINDOWS NT brand of operating systems, both from Microsoft Corporation. Software and hardware for wireless networks, especially Wireless Local Area Networks (WLANs), generally rely on operating system interfaces designed within the context of a wire-based network, such as a traditional wire-based Local Area Network (LAN). However, interfaces designed within the context of wire-based networks do not provide for the necessary communication between software and hardware to enable all of the functionality supported by wireless networking hardware. For example, the current interfaces do not provide sufficient information regarding transmission degradation to allow software components to adapt themselves for transmission over a wireless network. Similarly, current interfaces do not provide any mechanisms for determining the location of a user since such a concept does not have meaning within a wire-based network.
Accordingly, the present invention provides a method for communication between wireless network hardware components and software components which allows the software components to utilize and take advantage of wireless-specific features of the hardware components.
The present invention also provides a standard method for defining the functionality of wireless-specific features of hardware components.
Briefly, the present invention defines interfaces between wireless network hardware and software which provide for wireless-specific functionality in three areas: static queries, dynamic queries, and setting attributes. Static queries refer to information which does not change depending on the wireless connection. For example, the maximum raw bit rate which is supported by the hardware is a function of the hardware and does not change with each wireless connection the hardware makes. A query to determine the maximum raw bit rate supported would, therefore, be a static query. A dynamic query will attempt to obtain information based on the current wireless connection maintained by the hardware. For example, the identifier of the base station with which the wireless hardware is currently communicating is a value which can be obtained during a dynamic query. Setting attributes allows the software components to change parameters within the hardware components. Forcing the hardware to maintain a connection with a specific base station would be one example of setting an attribute.